/*
 Práctica 1 asignatura Desarrollo Aplicaciones Móviles

    -Informática-

Integrantes:  Esperanza González de la Mora & Félix López Garcinuño & José Miguel Bilbao Navas
 */

package capa_interfaz;

import capa_dominio.*;
import miCartera.MiCartera;
import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.AlertType;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.Item;
import javax.microedition.lcdui.StringItem;

public class FBorrarTodosGastos implements CommandListener {
    private Form formuborrar;
    private StringItem pregunta;
    private Command regresar, aceptar;
    private MiCartera midlet;
    private ControladorInterfaz cntrInterfaz;

    public FBorrarTodosGastos (MiCartera mimidlet, ControladorInterfaz cntrInterf){

        //Guardamos referencias
        this.midlet=mimidlet;
        this.cntrInterfaz=cntrInterf;

        //Creamos formulario de borrar
        formuborrar=new Form ("Borrar todos gastos de MiCartera");
        pregunta= new StringItem("", "¿Está seguro de borrar todos los gastos de MiCartera?", Item.PLAIN);
        regresar=new Command("Atras",Command.BACK,1);
        aceptar=new Command("Borrar", Command.OK,1);

        formuborrar.append(pregunta);
        formuborrar.addCommand(aceptar);
        formuborrar.addCommand(regresar);
        formuborrar.setCommandListener(this);

         //Establecemos como pantalla
        midlet.pantalla.setCurrent(formuborrar);


    }


    public void commandAction(Command c, Displayable d) {
        if (c==regresar){
            //Vuelve a la pantalla inicial
            midlet.pantalla.setCurrent(midlet.pantallainicial);
        }else {//si se da a aceptar
            //Borra del RecordStore de gastos el gasto pasado por el indice
           cntrInterfaz.borrarTodosGastoRecordStore();
           //Informa con un alert el borrado del gasto
           this.avisoBorrado();
           //Actualizamos Gastos de MiCartera
            midlet.actualizaGastos();

        }
    }

    public void avisoBorrado(){
        Alert alerta;

        alerta=new Alert("Aviso", "Cangrulations! Has borrado todos los gastos de MiCartera", null, AlertType.INFO);
        alerta.setTimeout(Alert.FOREVER);//Alerta modal
        //Despues establecemos el form de pantallainicial
        midlet.pantalla.setCurrent(alerta, midlet.pantallainicial);
    }

}
